<chapter xml:id="utf8.status.h">
<title><tt>__vic/utf8/status.h</tt></title>


<chapter xml:id="utf8--status">
<title><tt>utf8::status</tt></title>

<code-block lang="C++">
enum class utf8::status : unsigned char
{
    ok = 0,
    eof,
    // Errors
    no_leading_byte,
    truncated_code_point,
    overlong_encoding,
    code_point_too_big
};
using utf8::status_t = utf8::status; // for C++98
</code-block>

<p>Значения, возвращаемые функцией <tt>parse()</tt> класса
<xref to="utf8--reader"/>.</p>

<list style="bulleted">
    <item><tt>ok</tt> - code point успешно прочитан</item>
    <item><tt>eof</tt> - больше нечего читать</item>
    <item><tt>no_leading_byte</tt> - многобайтовая последовательность
        без ведущего байта</item>
    <item><tt>truncated_code_point</tt> - оборванная многобайтовая
        последовательность</item>
    <item><tt>overlong_encoding</tt> - использовано чрезмерно длинное
        представление</item>
    <item><tt>code_point_too_big</tt> - code point имеет слишком большое
        значение</item>
</list>

</chapter>


<chapter xml:id="utf8--is_error">
<title><tt>utf8::is_error()</tt></title>

<code-block lang="C++">
constexpr bool utf8::is_error(utf8::status s);
</code-block>

<p>Возвращает <tt>false</tt> для значений <tt>utf8::status::ok</tt> и
<tt>utf8::status::eof</tt>. В остальных случаях возвращается <tt>true</tt>.</p>

</chapter>


</chapter>
